/*讲解c语言<数组>的模块*/

/*引入头文件*/
#include <stdio.h>/*标准库<输入,输出>*/

/*一维数组*/
void array_one_dem()
{
    int array[5] = {233, 546, 94, 34, 42};
    for (int i = 0; i < 5; i+=1)
    {
        printf("成员: %d, 值: %d \n", i, array[i]);
    }
    // 注意:
    // 数组长度定义从 1 开始,访问从 0 开始
    // 如果数组成员没有赋值,会被 0 占位
    // 使用数组中的值不要超出长度
}

/*二维数组*/
void array_two_dem()
{
    /* 二维数组
     * 用[列][行]表示位置的数组
     */
    int array[3][3] = {
    {1, 2, 3,},
    {4, 5, 6},
    {7, 8, 9},
    };
    printf("值: %d \n",array[0][2]);
    // 注意:
    // 二维数组长度规则和一维数组一致
}

/*字符数组*/
void array_char()
{
    char str[10] = {'h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'l', 'd',};
    for (int i = 0; i <= 9; i+=1)
    {
        printf("[%c]", str[i]);
        if (i==9) { printf("\n"); }/*最后一次循环换行*/
    }
}

/*二维字符数组*/
void array_char_two_dem()
{
    char str[3][8] = { "how", "are", "you", };
    for (int i = 0; i <= 2; i+=1)
    {
        printf("[%s]", str[i]);
        if (i==2) { printf("\n"); }/*最后一次循环换行*/
    }
}

/*字符串*/
void array_string()
{
    /* c语言没有 string 类型
     * 需要借助字符数组存储字符串
     */
    char string[12] = "hello world";
    printf("字符串: %s \n", string);
    // 注意:
    // 字符串末尾包含 '\0' 字符
    // fgets() 输入字符串会包含 '\0' 和 '\n'
    // 所以数组建议预留 2 长度
}



int main(void)
{

}
